import axiosInstance from './axiosInstance';

/**
 * 视频相关API服务
 */
const videoApi = {
  /**
   * 获取推荐视频列表
   * @param {Object} params - 查询参数
   * @param {number} params.page - 页码
   * @param {number} params.pageSize - 每页数量
   * @returns {Promise} 返回视频列表数据
   */
  getRecommendedVideos: (params = {}) => {
    return axiosInstance.get('/videos/recommended', { params });
  },

  /**
   * 获取热门视频列表
   * @param {Object} params - 查询参数
   * @param {number} params.page - 页码
   * @param {number} params.pageSize - 每页数量
   * @returns {Promise} 返回视频列表数据
   */
  getHotVideos: (params = {}) => {
    return axiosInstance.get('/videos/hot', { params });
  },

  /**
   * 获取幻灯片视频列表
   * @returns {Promise} 返回幻灯片视频数据
   */
  getSlideVideos: () => {
    return axiosInstance.get('/videos/slide');
  },

  /**
   * 获取分类视频列表
   * @param {number} categoryId - 分类ID
   * @param {Object} params - 查询参数
   * @param {number} params.page - 页码
   * @param {number} params.pageSize - 每页数量
   * @returns {Promise} 返回分类视频数据
   */
  getVideosByCategory: (categoryId, params = {}) => {
    return axiosInstance.get(`/videos/category/${categoryId}`, { params });
  },

  /**
   * 获取视频详情
   * @param {number} videoId - 视频ID
   * @returns {Promise} 返回视频详情数据
   */
  getVideoDetail: (videoId) => {
    return axiosInstance.get(`/videos/${videoId}`);
  }
};

export default videoApi;